import { useAuthStore } from '../../store/modules/auth';

export default {
  mounted(el, binding) {
    const authStore = useAuthStore();
    const { value } = binding;
    const all_permission = '*:*:*';
    const permissions = authStore.userInfo.permissions;
    if (value && Array.isArray(value) && value.length > 0) {
      const permissionFlag = value;
      const hasPermissions = permissions.some(permission => {
        return all_permission === permission || permissionFlag.includes(permission);
      });

      if (!hasPermissions) {
        el.parentNode && el.parentNode.removeChild(el);
      }
    } else {
      throw new Error(`请设置操作权限标签值`);
    }
  }
};
